#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//void print_arr(int arr[10][10], int n, int m)
//{
//    int i = 0;
//    for (i = 0; i < m; i++)
//    {
//        int j = 0;
//        for (j = 0; j < n; j++)
//        {
//            printf("%d ", arr[i][j]);
//        }
//        printf("\n");
//    }
//}
//void Swap(int arr[10][10])
//{ 
//    int i = 0;
//    int j = 0;
//   for (i = 0; i < 10; i++)
//   {
//       for (j = i; j < 10; j++)
//       {
//            int temp = arr[i][j];
//            arr[i][j] = arr[j][i];
//            arr[j][i] = temp;
//       }
//   }
//}
//void TRP(int arr[10][10], int n, int m)
//{
//    Swap(arr);
//    print_arr(arr, n, m);
//}
//int main()
//{
//    int n = 0;
//    int m = 0;
//    scanf("%d%d", &n, &m);
//    int arr[10][10] = { 0 };
//    int i = 0;
//    if ((n >= 1 && n <= 10) && (m >= 1 && m <= 10))
//    {
//        for (i = 0; i < n; i++)
//        {
//            int j = 0;
//            for (j = 0; j < m; j++)
//            {
//                scanf("%d", &arr[i][j]);
//
//            }
//        }
//    }
//    TRP(arr,n, m);
//    return 0;
//}
//#include <stdio.h>
//void print_arr(int arr[], int sz)
//{
//    int i = 0;
//    for (i = 0; i < sz; i++)
//    {
//        printf("%d ", arr[i]);
//    }
//}
//void Bubble_sort(int arr[], int sz)
//{
//    int i = 0;
//    for (i = 0; i < sz - 1; i++)
//    {
//        int j = 0;
//        int flag = 0;
//        for (j = 0; j < sz - 1 - i; j++)
//        {
//            if (arr[i] > arr[i + 1])
//            {
//                int temp = arr[i];
//                arr[i] = arr[i + 1];
//                arr[i + 1] = temp;
//                flag = 1;
//            }
//            if (flag == 0)
//                break;
//        }
//    }
//    print_arr(arr, sz);
//
//}
//int main()
//{
//    int n = 0;
//    int m = 0;
//    scanf("%d%d", &n, &m);
//    int arr1[] = { 0 };
//
//    int arr2[] = { 0 };
//    int i = 0;
//    for (i = 0; i < n; i++)
//    {
//        scanf("%d", &arr1[i]);
//    }
//    for (i = 0; i < m; i++)
//    {
//        scanf("%d", &arr2[i]);
//    }
//    int arr[] = { 0 };
//    for (i = 0; i < n + m; i++)
//    {
//        if (i < n)
//        {
//            arr[i] = arr1[i];
//        }
//        else
//        {
//            arr[i] = arr2[i - n];
//        }
//    }
//    Bubble_sort(arr, n + m);
//
//    return 0;
//}
//int main()
//{
//	int arr[10] = { 0 };
//	int i = 0;
//	for (i = 0; i < 10; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//	int sum = 0;
//	for (i = 0; i < 10; i++)
//	{
//		sum += arr[i];
//	}
//	double aver = (double)sum / 10;
//	printf("%lf\n", aver);
//	return 0;
//}
void print_intarr(int arr1[], int arr2[],int sz)
{
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		printf("%d ", arr1[i]);
	}
	printf("\n");
	for (i = 0; i < sz; i++)
	{
		printf("%d ", arr2[i]);
	}
	printf("\n");
}
void Swap_arr(void* p1, void* p2,int sz,int width) 
{
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		int j = 0;
		for (j = 0; j < width; j++)
		{
			char temp = *(char*)p1;
			*(char*)p1 = *(char*)p2;
			*(char*)p2 = temp;
			((char*)p1)++;
			((char*)p2)++;
		}
	}
}
int main()
{
	int arr1[] = { 0,1,2,3,4 };
	int arr2[] = { 5,6,7,8,9 };
	int sz = sizeof(arr1) / sizeof(arr1[0]);
	int width = sizeof(arr1[0]);
	Swap_arr(arr1, arr2, sz, width);
	print_intarr(arr1, arr2, sz);
	return 0;
}
